package com.sinopec.ch34x.device.core.config

import android.os.Parcel
import android.os.Parcelable

//配置串口波特率，函数说明可参照编程手册
data class Config(
    var baudRate: Int = 115200,
    var dataBit: Byte = 8,
    var stopBit: Byte = 0,
    var parity: Byte = 0,
    var flowControl: Byte = 0
):Parcelable {
    constructor(parcel: Parcel) : this(
        parcel.readInt(),
        parcel.readByte(),
        parcel.readByte(),
        parcel.readByte(),
        parcel.readByte()
    ) {
    }

    override fun writeToParcel(parcel: Parcel, flags: Int) {
        parcel.writeInt(baudRate)
        parcel.writeByte(dataBit)
        parcel.writeByte(stopBit)
        parcel.writeByte(parity)
        parcel.writeByte(flowControl)
    }

    override fun describeContents(): Int {
        return 0
    }

    companion object CREATOR : Parcelable.Creator<Config> {
        override fun createFromParcel(parcel: Parcel): Config {
            return Config(parcel)
        }

        override fun newArray(size: Int): Array<Config?> {
            return arrayOfNulls(size)
        }
    }

}